﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Modelos;

namespace JPSOFTWARE.BON.Modelos.Interfaces
{
    public interface IProdutos
    {
        bool RegistrarProduto(RegistrarProdutosModel registrarProdutoModel);

        AlterarProdutosModel AlterarProduto(int IdProduto, int IdDistribuidora);

        bool AlterarProduto(AlterarProdutosModel alterarProdutoModel);

        bool ExcluirProdutoAdministrar(int IdProduto);

        bool ExcluirProduto(int IdProduto);

        List<ProdutosView> ListarTodosProdutos();        

        ProdutosView ListarProduto(int IdProduto);

        List<Categoria> ListarCategoria();

        Categoria ListarCategoria(int IdCategoria);

        ProdutosView ExibirExcluirProdutoAdministrar(int IdProduto);

        ProdutosView ExibirExcluirProduto(int idProduto);

        List<SubCategoria> ListarSubCategoria();

        List<SubCategoria> ListarSubCategoria(int IdCategoria);

        List<Produto> ListarProdutosSubCategoria(int IdSubCategoria);

        List<ProdutosView> ListarProdutos(int IdDistribuidora);

        List<ProdutosView> ListarProdutosInicial(int IdDistribuidora);

        List<ProdutosView> BuscarProdutoPorId(int IdProduto);

        List<ProdutosView> ListarProdutosInicial(int IdDistribuidora, int IdProduto);

        List<ProdutosView> ListarProdutoGerenciar(int IdProduto);

        AlterarProdutosModel AlterarProdutoAdministrar(int IdProduto);

        bool AlterarProdutoAdministrar(AlterarProdutosModel produto);

        List<ProdutosView> ListarTodosProdutosAdministrar();

        bool RegistrarProdutosAdministrar(RegistrarProdutosModel produto);

        bool VerificaExisteProduto(string produto, int IdSubCategoria);
    }
}
